package cn.yj.common.interfaces;

import java.util.Map;

/**
 * 支付成功的支付方通知结果
 * <p>
 * 验签成功后才有通知。业务上实现该接口对支付成功进行相关业务操作
 *
 * @author 永健
 * @since 2022-02-19 13:44
 */
public interface IPaySuccessNotify {

    /**
     * 微信支付成功通知
     *
     * @param params 微信支付成功，支付方回调通知的原参数
     * @param tag    是不是微信主动通知的；true:是，false:不是，可能是我们程序主动去查该订单的支付结果，或者是前端支付成功的主动回调
     */
    default void wechat(Map<String, ?> params, boolean tag){}

    /**
     * 支付宝支付成功通知
     *
     * @param params 支付宝支付成功，支付方回调通知的原参数
     * @param tag    是不是微信主动通知的；true:是，false:不是，可能是我们程序主动去查该订单的支付结果，或者是前端支付成功的主动回调
     */
    default void alipay(Map<String, ?> params, boolean tag){}

    /**
     * 微信支付成功通知
     *
     * @param params 微信支付成功，支付方回调通知的原参数
     * @param tag    是不是微信主动通知的；true:是，false:不是，可能是我们程序主动去查该订单的支付结果，或者是前端支付成功的主动回调
     */
   default void other(Map<String, ?> params, boolean tag){}
}
